/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package yuhuibear.poat.annotations.relation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 表示具有该标签的java 类映射为视图， 具有这个标签的java类属性上的Field 标签不再生效。<br>
 * 视图中的字段名称，必须严格的与java对象中的名称，按照大写下划线风格转换后一致。 不可与 Table, Field 同时使用。
 * 
 * @author yuhuibear
 */
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface View {

	/**
	 * 视图的名称
	 * 
	 * @return
	 */
	String name();

	/**
	 * 创建视图的sql.
	 * <p>
	 * 例如： create view new_view as select * from relations. 则 name = new_view, sqlToCreate = new_view.
	 * </p>
	 * 
	 * @return
	 */
	String sqlToCreate();
}
